const addrModel = require('../model/addr/addrModel')

class AddrController {
  // 获取地址列表  无入参
  static async addrlist(ctx) {
    // console.log('addr', ctx.user)
    let user = ctx.user
    let list = await addrModel.find({ openid: user.openid })
    // console.log(list)
    ctx.body = {
      err: 0,
      msg: '成功！',
      data: { list }
    }
  }
  // 删除地址  入参 _id
  static async addrdel(ctx) {
    let { _id } = ctx.request.body
    if (!_id) {
      ctx.body = {
        err: -1,
        msg: '缺少必填项！'
      }
    } else {
      let res = await addrModel.deleteOne({ _id })
      ctx.body = {
        err: 0,
        msg: '删除成功！',
        data: { data: res }
      }
    }
  }
  // 新增或者修改
  //  入参 有_id 为修改  无_id  为新增
  static async addradd(ctx) {
    let user = ctx.user
    let { name, region, tel, detailaddr, _id } = ctx.request.body
    if (!name && !tel && !detailaddr) {
      ctx.body = {
        err: -1,
        msg: '参数错误，缺少必填项！'
      }
    } else {
      let ele = {
        create_time: Date.now(),
        name,
        region,
        tel,
        detailaddr,
        openid: user.openid
      }
      // console.log('ele', ele)
      let res = null
      if (!_id) {
        res = await addrModel.insertMany([ele])
      } else {
        res = await addrModel.findOne({ _id }).updateOne(ele)
      }
      ctx.body = {
        err: 0,
        msg: '添加成功！',
        data: res
      }
    }
  }
}
module.exports = AddrController
